package com.tvunetworks.center.user.mapper;

import com.tvunetworks.center.user.model.CustomizedUserGroup;
import com.tvunetworks.center.user.model.param.PageCustomizedUserGroupParam;
import com.tvunetworks.center.user.model.vo.CustomizedUserGroupVo;
import com.tvunetworks.center.user.model.vo.api.ListGroupVo;
import org.apache.ibatis.annotations.Param;
import tk.mybatis.mapper.common.Mapper;

import java.util.List;
/**
 * @author lebronchen
 */
public interface CustomizedUserGroupMapper extends Mapper<CustomizedUserGroup> {
    /**
     *
     * @param userId userId
     */
    void setUserAllGroupNotDefault(@Param("userId") String userId);

    /**
     *
     * @param param param
     * @return List
     */
    List<CustomizedUserGroupVo> listUserGroup(PageCustomizedUserGroupParam param);

    /**
     *
     * @param group group
     * @return List
     */
    List<String> listGroupUser(@Param("group") String group);

    /**
     *
     * @param groupName groupName
     * @return List
     */
    List<String> isDefaultGroupUserId(@Param("groupName") String groupName);

    /**
     *
     * @param userId userId
     * @param group group
     * @return List
     */
    List<ListGroupVo> listGroup(@Param("userId") String userId, @Param("group") String group);
}
